package org.sippr.pojo;

import com.fasterxml.jackson.annotation.JsonFormat;
import jakarta.validation.constraints.NotEmpty;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;

/**
 * 风格与大模型和lorra的对应关系，如果不知道为什么这样做，请去B站看sd原理
 * sd_style
 */
@Data
public class SdStyle implements Serializable {
    private Integer id;

    private Integer cpId;

    private Integer lorraId;

    @NotEmpty(groups = Add.class)
    private String name;

    private Integer parentId;

    private Integer createUser;

    private Integer modifyUser;
    @JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss")
    private LocalDateTime createTime;
    @JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss")
    private LocalDateTime updateTime;
    private SdCheckPoints checkPoints;
    private SdLorra lorra;

    private List<SdStyle> children = new ArrayList<>();
    @Serial
    private static final long serialVersionUID = 1L;

    public interface Add {

    }
}